gettext: Integer overflow leads to heap OOB write or read
authorLidong Chen <lidong.chen@oracle.com>
Fri, 22 Nov 2024 06:27:56 +0000 (06:27 +0000)
committerFelix Zielcke <fzielcke@z-51.de>
Wed, 11 Jun 2025 15:42:34 +0000 (17:42 +0200)
commitd0fb334cf0d992da64062533915f0cb4d940b94a
treee237e8eaa6b0e226201139633544e902dc00b35d
parente21b1da4bb37d818bd5a61704b37fa9a4549687b
gettext: Integer overflow leads to heap OOB write or read

Calculation of ctx->grub_gettext_msg_list size in grub_mofile_open() may
overflow leading to subsequent OOB write or read. This patch fixes the
issue by replacing grub_zalloc() and explicit multiplication with
grub_calloc() which does the same thing in safe manner.

Fixes: CVE-2024-45776
Reported-by: Nils Langius <nils@langius.de>
Signed-off-by: Lidong Chen <lidong.chen@oracle.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
Reviewed-by: Alec Brown <alec.r.brown@oracle.com>
Gbp-Pq: Topic cve-2025-jan
Gbp-Pq: Name gettext-Integer-overflow-leads-to-heap-OOB-write-or-read.patch
grub-core/gettext/gettext.c